The present invention relates to a control method and a numerical control for controlling the motion of industrial machine tools, robots or the like. Reference input variables for the machine are generated in a cartesian coordinate system and subjected to a kinematic transformation into a machine coordinate system to specify motion parameters axially for one or more drives of the machine.
Control of machine tools and industrial robots is usually implemented by purely axial control in a cascade structure which has, in addition to numerous advantages, the basic disadvantage of lower dynamics in response to set point changes in comparison with a single control loop. This disadvantage is compensated today by feed-forward concepts which permit ideal tracking of the controlled variable without intervention by controllers, apart from disturbances or inaccuracies of the model of the controlled system.
Another disadvantage is the enormous amount of computation power of these feed forward controll method in higher order systems.
An object of the present invention is to create an alternative path control concept that will also significantly improve the path accuracy, or rather, permitting a lower contour error in comparison with axial feed-forward control concepts while also permitting a lower contour error.
According to the present invention, this object is achieved by providing a control method for motion control in which the cartesian reference input variables in the cartesian coordinate system are controlled by subjecting the resulting cartesian motion values to a kinematic transformation into the machine coordinate system to specify motion parameters axially for each drive. Actual motion values determined in the cartesian coordinate system and belonging to the cartesian reference input variables and/or cartesian motion values are sent back as controlled variables to the cartesian control, so that the kinematic transformation into the machine coordinate system is compensated inversely by the mechanical system of the machine.
The preceding object is also achieved by providing a numerical control algrithm for motion control suitable for performing the control method, having a reference input variable generator for the machine in the cartesian coordinate system, a means for kinematic transformation of the reference input variables into a machine coordinate system and a means for axially driving of one or more drives of the machine with motion parameters derived from the reference input variables. A cartesian control of the cartesian reference input variables is provided, and its resulting cartesian motion values are transformed by the means for kinematic transformation into the machine coordinate system in order to be specified as motion parameters axially for each drive, with a measuring system being provided for determining actual motion values belonging to the cartesian reference input variables and/or cartesian motion values in the cartesian coordinate system, the detector system supplying controlled variables to the cartesian control, with the mechanical system of the machine being used as the means for inverse kinematic transformation into the machine coordinate system.
Through the present invention, the non-linear kinematic transformation, among other things, is inversely compensated by the inverse transformation contained in the mechanical system. Thus, the controlled system is always linear from the standpoint of the controller if the sampling time and thus the achievable controller dynamics are small enough.
In this way, complicated methods of acceleration feed-forward control, in particular with elasticity in the mechanical system, can be avoided. Since the position measured in cartesian coordinates is processed directly without any kinematic transformation, errors due to inaccuracies in kinematics such as thermal expansion, backlash, deformation, etc. are conceptually excluded. A contour error of almost zero can be achieved through a suitable characteristic of the controller structure.
On the basis of the cartesian control concept according to the present invention, the following different advantageous instances of a cartesian control according to the present invention can be created, among other things.
According to a first example embodiment of the control method and the numerical control for motion control, a cartesian position control, kinematic transformation and axial speed and acceleration control are provided by performing a cartesian position control of cartesian position setpoints by subjecting the resulting cartesian speed values to a kinematic transformation into the machine coordinate system and specifying them as speed parameters of an axial speed and/or acceleration control for each drive. Actual position values determined in the cartesian coordinate system and belonging to the cartesian position setpoints are sent back as controlled variables to the cartesian position control.
Another example embodiment performs a cartesian position and speed control, subsequent kinematic transformation and axial acceleration control by performing a cartesian position and speed control of cartesian position setpoints by subjecting the resulting cartesian acceleration values to a kinematic transformation into the machine coordinate system and specifying them as acceleration parameters of an axial acceleration control for each drive. Actual position values determined in the cartesian coordinate system and belonging to the cartesian position setpoints and speed setpoints are sent back as controlled variables to the cartesian position control, and actual speed values are sent back as controlled variables to the cartesian speed control.
Another example embodiment permits a cartesian position, speed and acceleration control and a subsequent kinematic transformation of the voltage values of a converter by performing a cartesian position, speed and acceleration control of cartesian position setpoints by subjecting the resulting cartesian current or voltage setpoints to a kinematic transformation into the machine coordinate system and specifying them as the current or voltage values for each drive. Actual position values determined in the cartesian coordinate system and belonging to the cartesian position setpoints, speed setpoints and acceleration setpoints are sent back as controlled variables to the cartesian position control, actual speed values being sent back as controlled variables to the cartesian speed control and actual acceleration values are sent back as controlled variables to the cartesian acceleration control.
The three example embodiments described above can be implemented in different ways. Examples in this regard are described below.
Another example embodiment uses the normal error and the tangential error as a deviation for cartesian position control of the path.
It is especially advantageous for the actual cartesian motion values to be determined by direct measurement of the position in the cartesian coordinate system, in particular at the outer end of the machine kinematics, in particular a robot gripper or a tool.
As an alternative, the actual cartesian motion values can also be determined by indirect axial measurement of the position in the machine coordinate system and subsequent inverse transformation into the cartesian coordinate system.
According to another advantageous embodiment, axial control parts remaining in the, machine axes are equipped with known feed forward control methods for one or more corresponding axial motion parameters for more accurate control of a mechanical system with inherent elasticities, for example.
Therefore, the dynamics of axial partial controls remaining in the response to set point changes can be further utilized through known axial feed-forward concepts as part of a cartesian path control according to the present invention.